package org.cytoscape.myapp.cytoscape_app_v1.internal.model;

import java.util.List;
import java.util.Set;

import org.cytoscape.application.CyApplicationManager;
import org.cytoscape.group.CyGroup;
import org.cytoscape.group.CyGroupManager;
import org.cytoscape.model.CyNode;
import org.cytoscape.myapp.cytoscape_app_v1.internal.metrics.domain.TrustedRelationship;

public abstract class StateCyGroups {
	
	protected CyGroupManager cyGroupManager;
	protected CyApplicationManager applicationManager;
	
	public abstract void changeStateGroup(Set<CyGroup> groups);
	public abstract StateCyGroups getNextState();
	public abstract List<CyNode> getNodes();
	public abstract List<TrustedRelationship> getListTrustedRelationships();
	
	
	public StateCyGroups(CyApplicationManager applicationManager){
		this.applicationManager = applicationManager;
	}
	
	public CyGroupManager getCyGroupManager() {
		return cyGroupManager;
	}
	
	public void setCyGroupManager(CyGroupManager cyGroupManager) {
		this.cyGroupManager = cyGroupManager;
	}
	
}
